﻿<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
	xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
	xmlns:Controls="clr-namespace:ICSharpCode.SharpDevelop.Widgets">
		
	<Brush x:Key="ButtonNormal">#DADFEA</Brush>
	<Brush x:Key="ButtonHover">#E6EBEF</Brush>
	<Brush x:Key="ButtonPressed">#B6BDD3</Brush>
	<Brush x:Key="BorderBrush">#7F9DB9</Brush>
	<Brush x:Key="ArrowBrush">Black</Brush>
	<Brush x:Key="ArrowsBorderBrush">#B6BDD3</Brush>
	
	<Style x:Key="UpButton"
	       TargetType="RepeatButton">
		<Setter Property="Focusable"
		        Value="False" />
		<Setter Property="Template">
			<Setter.Value>
				<ControlTemplate TargetType="{x:Type Controls:DragRepeatButton}">
					<Border x:Name="bg"
					        Background="{StaticResource ButtonNormal}"
					        CornerRadius="2 2 0 0">
						<Path Fill="{StaticResource ArrowBrush}"
						      Data="M 0 3 L 3.5 0 L 7 3"
						      HorizontalAlignment="Center"
						      VerticalAlignment="Center" />
					</Border>
					<ControlTemplate.Triggers>
						<Trigger Property="IsMouseOver"
						         Value="True">
							<Setter TargetName="bg"
							        Property="Background"
							        Value="{StaticResource ButtonHover}" />
						</Trigger>
						<Trigger Property="IsMouseCaptured"
						         Value="True">
							<Setter TargetName="bg"
							        Property="Background"
							        Value="{StaticResource ButtonPressed}" />
						</Trigger>
						<Trigger Property="IsDragging"
						         Value="True">
							<Setter TargetName="bg"
							        Property="Background"
							        Value="{StaticResource ButtonPressed}" />
						</Trigger>
					</ControlTemplate.Triggers>
				</ControlTemplate>
			</Setter.Value>
		</Setter>
	</Style>
	
	<Style x:Key="DownButton"
	       TargetType="RepeatButton">
		<Setter Property="Focusable"
		        Value="False" />
		<Setter Property="Template">
			<Setter.Value>
				<ControlTemplate TargetType="{x:Type Controls:DragRepeatButton}">
					<Border x:Name="bg"
					        Background="{StaticResource ButtonNormal}"
					        CornerRadius="0 0 2 2">
						<Path Fill="{StaticResource ArrowBrush}"
						      Data="M 0 0 L 3.5 3 L 7 0"
						      HorizontalAlignment="Center"
						      VerticalAlignment="Center" />
					</Border>
					<ControlTemplate.Triggers>
						<Trigger Property="IsMouseOver"
						         Value="True">
							<Setter TargetName="bg"
							        Property="Background"
							        Value="{StaticResource ButtonHover}" />
						</Trigger>
						<Trigger Property="IsMouseCaptured"
						         Value="True">
							<Setter TargetName="bg"
							        Property="Background"
							        Value="{StaticResource ButtonPressed}" />
						</Trigger>
						<Trigger Property="IsDragging"
						         Value="True">
							<Setter TargetName="bg"
							        Property="Background"
							        Value="{StaticResource ButtonPressed}" />
						</Trigger>
					</ControlTemplate.Triggers>
				</ControlTemplate>
			</Setter.Value>
		</Setter>
	</Style>
	
	<Style TargetType="{x:Type Controls:NumericUpDown}">
		<Setter Property="Background"
		        Value="White" />
		<Setter Property="BorderThickness"
		        Value="1" />
		<Setter Property="BorderBrush"
		        Value="{StaticResource BorderBrush}" />
		<Setter Property="Focusable"
		        Value="False" />
		<Setter Property="Template">
			<Setter.Value>
				<ControlTemplate TargetType="{x:Type Controls:NumericUpDown}">
					<Border Background="{TemplateBinding Background}"
					        BorderBrush="{TemplateBinding BorderBrush}"
					        BorderThickness="{TemplateBinding BorderThickness}"
					        Padding="1">
						<Grid>
							<Grid.RowDefinitions>
								<RowDefinition />
								<RowDefinition />
							</Grid.RowDefinitions>
							<Grid.ColumnDefinitions>
								<ColumnDefinition />
								<ColumnDefinition Width="15" />
							</Grid.ColumnDefinitions>
							<TextBox x:Name="PART_TextBox"
							         BorderThickness="0"
							         Background="{x:Null}"
							         Foreground="{TemplateBinding Foreground}"
							         Grid.RowSpan="2" />
							<Controls:DragRepeatButton x:Name="PART_UpButton"
								Style="{StaticResource UpButton}"
								Grid.Column="1" />
							<Controls:DragRepeatButton x:Name="PART_DownButton"
								Style="{StaticResource DownButton}"
								Grid.Column="1"
								Grid.Row="1" />
							<Border Grid.Column="1"
							        Grid.RowSpan="2"
							        BorderBrush="{StaticResource ArrowsBorderBrush}"
							        BorderThickness="1"
							        CornerRadius="2" />
						</Grid>
					</Border>
				</ControlTemplate>
			</Setter.Value>
		</Setter>
	</Style>
</ResourceDictionary>
